package sv.gob.mh.dgii.model;

// Generated Jun 24, 2008 4:01:09 PM by Hibernate Tools 3.2.0.CR1

import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * ImSolicitud generated by hbm2java
 */
@Entity
@Table(name = "IM_SOLICITUD", schema = "IMPRENTAS")
public class ImSolicitud implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -7762817289838090742L;
	
	private Long nsolicitud;
	private ImDenegacion imDenegacion;
	private TbActEco tbActEco;
	private RcRuc rcRucByNit;
	private RcRuc rcRucByNitRepresentante;
	private CdDocumento cdDocumento;
	private RcRuc rcRucByNitPropietario;
	private TbRepresentante tbRepresentante;
	private TbDocIdentidad tbDocIdentidad;
	private TbUnidadRecep tbUnidadRecep;
	private String nfolio;
	private String cregAlcaldia;
	private Date fbalance;
	private Date frecepcion;
	private Double vactivo;
	private Double vdoceMeses;
	private Integer nobreros;
	private Integer bactiva;
	private String cusuario;
	private Date fhingreso;
	private Long nautorizacion;
	private Date fautorizacion;
	private String sobservaciones;
	private String cusuarioAutoriza;
	private String ndocIdentidad;
	private Integer baceptaOmisos;
	private String nresolucion;
	private Set<ImSolicitudDet> imSolicitudDets = new HashSet<ImSolicitudDet>(0);

	public ImSolicitud() {
	}

	public ImSolicitud(Long nsolicitud, RcRuc rcRucByNit, String nfolio) {
		this.nsolicitud = nsolicitud;
		this.rcRucByNit = rcRucByNit;
		this.nfolio = nfolio;
	}

	public ImSolicitud(Long nsolicitud, ImDenegacion imDenegacion,
			TbActEco tbActEco, RcRuc rcRucByNit, RcRuc rcRucByNitRepresentante,
			CdDocumento cdDocumento, RcRuc rcRucByNitPropietario,
			TbRepresentante tbRepresentante, TbDocIdentidad tbDocIdentidad,
			TbUnidadRecep tbUnidadRecep, String nfolio, String cregAlcaldia,
			Date fbalance, Date frecepcion, Double vactivo, Double vdoceMeses,
			Integer nobreros, Integer bactiva, String cusuario, Date fhingreso,
			Long nautorizacion, Date fautorizacion, String sobservaciones,
			String cusuarioAutoriza, String ndocIdentidad,
			Integer baceptaOmisos, String nresolucion,
			Set<ImSolicitudDet> imSolicitudDets) {
		this.nsolicitud = nsolicitud;
		this.imDenegacion = imDenegacion;
		this.tbActEco = tbActEco;
		this.rcRucByNit = rcRucByNit;
		this.rcRucByNitRepresentante = rcRucByNitRepresentante;
		this.cdDocumento = cdDocumento;
		this.rcRucByNitPropietario = rcRucByNitPropietario;
		this.tbRepresentante = tbRepresentante;
		this.tbDocIdentidad = tbDocIdentidad;
		this.tbUnidadRecep = tbUnidadRecep;
		this.nfolio = nfolio;
		this.cregAlcaldia = cregAlcaldia;
		this.fbalance = fbalance;
		this.frecepcion = frecepcion;
		this.vactivo = vactivo;
		this.vdoceMeses = vdoceMeses;
		this.nobreros = nobreros;
		this.bactiva = bactiva;
		this.cusuario = cusuario;
		this.fhingreso = fhingreso;
		this.nautorizacion = nautorizacion;
		this.fautorizacion = fautorizacion;
		this.sobservaciones = sobservaciones;
		this.cusuarioAutoriza = cusuarioAutoriza;
		this.ndocIdentidad = ndocIdentidad;
		this.baceptaOmisos = baceptaOmisos;
		this.nresolucion = nresolucion;
		this.imSolicitudDets = imSolicitudDets;
	}

	@Id
	@Column(name = "N_SOLICITUD", unique = true, nullable = false, precision = 22, scale = 0)
	public Long getNsolicitud() {
		return this.nsolicitud;
	}

	public void setNsolicitud(Long nsolicitud) {
		this.nsolicitud = nsolicitud;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "C_DENEGADA")
	public ImDenegacion getImDenegacion() {
		return this.imDenegacion;
	}

	public void setImDenegacion(ImDenegacion imDenegacion) {
		this.imDenegacion = imDenegacion;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "C_ACT_ECO")
	public TbActEco getTbActEco() {
		return this.tbActEco;
	}

	public void setTbActEco(TbActEco tbActEco) {
		this.tbActEco = tbActEco;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "NIT", nullable = false)
	public RcRuc getRcRucByNit() {
		return this.rcRucByNit;
	}

	public void setRcRucByNit(RcRuc rcRucByNit) {
		this.rcRucByNit = rcRucByNit;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "NIT_REPRESENTANTE")
	public RcRuc getRcRucByNitRepresentante() {
		return this.rcRucByNitRepresentante;
	}

	public void setRcRucByNitRepresentante(RcRuc rcRucByNitRepresentante) {
		this.rcRucByNitRepresentante = rcRucByNitRepresentante;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "N_DOCUMENTO")
	public CdDocumento getCdDocumento() {
		return this.cdDocumento;
	}

	public void setCdDocumento(CdDocumento cdDocumento) {
		this.cdDocumento = cdDocumento;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "NIT_PROPIETARIO")
	public RcRuc getRcRucByNitPropietario() {
		return this.rcRucByNitPropietario;
	}

	public void setRcRucByNitPropietario(RcRuc rcRucByNitPropietario) {
		this.rcRucByNitPropietario = rcRucByNitPropietario;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "C_REPRESENTANTE")
	public TbRepresentante getTbRepresentante() {
		return this.tbRepresentante;
	}

	public void setTbRepresentante(TbRepresentante tbRepresentante) {
		this.tbRepresentante = tbRepresentante;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "C_DOC_IDENTIDAD")
	public TbDocIdentidad getTbDocIdentidad() {
		return this.tbDocIdentidad;
	}

	public void setTbDocIdentidad(TbDocIdentidad tbDocIdentidad) {
		this.tbDocIdentidad = tbDocIdentidad;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "C_UNIDAD_RECEP")
	public TbUnidadRecep getTbUnidadRecep() {
		return this.tbUnidadRecep;
	}

	public void setTbUnidadRecep(TbUnidadRecep tbUnidadRecep) {
		this.tbUnidadRecep = tbUnidadRecep;
	}

	@Column(name = "N_FOLIO", nullable = false, length = 12)
	public String getNfolio() {
		return this.nfolio;
	}

	public void setNfolio(String nfolio) {
		this.nfolio = nfolio;
	}

	@Column(name = "C_REG_ALCALDIA", length = 25)
	public String getCregAlcaldia() {
		return this.cregAlcaldia;
	}

	public void setCregAlcaldia(String cregAlcaldia) {
		this.cregAlcaldia = cregAlcaldia;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "F_BALANCE", length = 7)
	public Date getFbalance() {
		return this.fbalance;
	}

	public void setFbalance(Date fbalance) {
		this.fbalance = fbalance;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "F_RECEPCION", length = 7)
	public Date getFrecepcion() {
		return this.frecepcion;
	}

	public void setFrecepcion(Date frecepcion) {
		this.frecepcion = frecepcion;
	}

	@Column(name = "V_ACTIVO", precision = 13)
	public Double getVactivo() {
		return this.vactivo;
	}

	public void setVactivo(Double vactivo) {
		this.vactivo = vactivo;
	}

	@Column(name = "V_DOCE_MESES", precision = 13)
	public Double getVdoceMeses() {
		return this.vdoceMeses;
	}

	public void setVdoceMeses(Double vdoceMeses) {
		this.vdoceMeses = vdoceMeses;
	}

	@Column(name = "N_OBREROS", precision = 5, scale = 0)
	public Integer getNobreros() {
		return this.nobreros;
	}

	public void setNobreros(Integer nobreros) {
		this.nobreros = nobreros;
	}

	@Column(name = "B_ACTIVA", precision = 1, scale = 0)
	public Integer getBactiva() {
		return this.bactiva;
	}

	public void setBactiva(Integer bactiva) {
		this.bactiva = bactiva;
	}

	@Column(name = "C_USUARIO", length = 30)
	public String getCusuario() {
		return this.cusuario;
	}

	public void setCusuario(String cusuario) {
		this.cusuario = cusuario;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "FH_INGRESO", length = 7)
	public Date getFhingreso() {
		return this.fhingreso;
	}

	public void setFhingreso(Date fhingreso) {
		this.fhingreso = fhingreso;
	}

	@Column(name = "N_AUTORIZACION", precision = 22, scale = 0)
	public Long getNautorizacion() {
		return this.nautorizacion;
	}

	public void setNautorizacion(Long nautorizacion) {
		this.nautorizacion = nautorizacion;
	}

	@Temporal(TemporalType.DATE)
	@Column(name = "F_AUTORIZACION", length = 7)
	public Date getFautorizacion() {
		return this.fautorizacion;
	}

	public void setFautorizacion(Date fautorizacion) {
		this.fautorizacion = fautorizacion;
	}

	@Column(name = "S_OBSERVACIONES", length = 500)
	public String getSobservaciones() {
		return this.sobservaciones;
	}

	public void setSobservaciones(String sobservaciones) {
		this.sobservaciones = sobservaciones;
	}

	@Column(name = "C_USUARIO_AUTORIZA", length = 30)
	public String getCusuarioAutoriza() {
		return this.cusuarioAutoriza;
	}

	public void setCusuarioAutoriza(String cusuarioAutoriza) {
		this.cusuarioAutoriza = cusuarioAutoriza;
	}

	@Column(name = "N_DOC_IDENTIDAD", length = 15)
	public String getNdocIdentidad() {
		return this.ndocIdentidad;
	}

	public void setNdocIdentidad(String ndocIdentidad) {
		this.ndocIdentidad = ndocIdentidad;
	}

	@Column(name = "B_ACEPTA_OMISOS", precision = 1, scale = 0)
	public Integer getBaceptaOmisos() {
		return this.baceptaOmisos;
	}

	public void setBaceptaOmisos(Integer baceptaOmisos) {
		this.baceptaOmisos = baceptaOmisos;
	}

	@Column(name = "N_RESOLUCION", length = 20)
	public String getNresolucion() {
		return this.nresolucion;
	}

	public void setNresolucion(String nresolucion) {
		this.nresolucion = nresolucion;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "imSolicitud")
	public Set<ImSolicitudDet> getImSolicitudDets() {
		return this.imSolicitudDets;
	}

	public void setImSolicitudDets(Set<ImSolicitudDet> imSolicitudDets) {
		this.imSolicitudDets = imSolicitudDets;
	}

}
